1
'****************************** Module Header ******************************\
2 ' Module Name: Rss.aspx.vb
3 ' Project: VBASPNETRssFeeds
4 ' Copyright (c) Microsoft Corporation
6 ' This is the main page of this sample that illustrate how to build a rss
9 ' This source is subject to the Microsoft Public License.
10 ' See http://www.microsoft.com/opensource/licenses.mspx#Ms-PL.
11 ' All other rights reserved.
14 ' 01/19/2010 5:30 PM Bravo Yang Created
15 '***************************************************************************/
18 Imports System
.Data
.SqlClient
20 Partial
Public Class Rss
21 Inherits System
.Web
.UI
.Page
23 Protected
Sub Page_Load(ByVal sender
As Object, ByVal e
As System
.EventArgs
) Handles
Me.Load
25 Response
.ContentType
= "application/rss+xml"
26 Response
.ContentEncoding
= Encoding
.UTF8
28 Dim rsswriter
As New XmlTextWriter(Response
.OutputStream
, Encoding
.UTF8
)
31 WriteRssOpening(rsswriter
)
34 Dim ArticlesRssTable
As DataTable
= GetDateSet()
35 WriteRssBody(rsswriter
, ArticlesRssTable
)
38 WriteRssEnding(rsswriter
)
44 Private Sub WriteRssOpening(ByVal rsswriter
As XmlTextWriter
)
45 rsswriter
.WriteStartElement("rss")
46 rsswriter
.WriteAttributeString("version", "2.0")
47 rsswriter
.WriteStartElement("channel")
48 rsswriter
.WriteElementString("title", "VBASPNETRssFeeds")
49 rsswriter
.WriteElementString("link", Request
.Url
.Host
)
50 rsswriter
.WriteElementString("description", "This is a sample telling how to create rss feeds for a website.")
53 Private Sub WriteRssBody(ByVal rsswriter
As XmlTextWriter
, ByVal data
As DataTable
)
54 For Each rssitem
As DataRow
In data
.Rows
55 rsswriter
.WriteStartElement("item")
56 rsswriter
.WriteElementString("title", rssitem(1).ToString())
57 rsswriter
.WriteElementString("author", rssitem(2).ToString())
58 rsswriter
.WriteElementString("link", rssitem(3).ToString())
59 rsswriter
.WriteElementString("description", rssitem(4).ToString())
60 rsswriter
.WriteElementString("pubDate", rssitem(5).ToString())
61 rsswriter
.WriteEndElement()
65 Private Sub WriteRssEnding(ByVal rsswriter
As XmlTextWriter
)
66 rsswriter
.WriteEndElement()
67 rsswriter
.WriteEndElement()
70 Private Function GetDateSet() As DataTable
71 Dim ArticlesRssTable
As New DataTable()
73 Dim strconn
As String = ConfigurationManager
.ConnectionStrings("ConnStr4Articles").ConnectionString
74 Dim conn
As New SqlConnection(strconn
)
75 Dim strsqlquery
As String = "SELECT * FROM [Articles]"
77 Dim da
As New SqlDataAdapter(strsqlquery
, conn
)
78 da
.Fill(ArticlesRssTable
)
80 Return ArticlesRssTable